
/* 
错误处理中间件
错误处理中间件和其他中间件定义类似，只是要使用4个参数，而不是3个，其名如下:(err,req,res,next)。
app.use(function(err,req,res,next){
    console.error(err.stack)
    res.status(500).send('something broke!')
})
*/



const express = require('express');
const app = express();
const LoginRouter = require('./router3/LoginRouter')
const HomeRouter = require('./router3/HomeRouter')
const AboutRouter = require('./router3/AboutRouter')
app.use((req, res, next) => {
    console.log("验证token");
    next();
})

app.use("/login",LoginRouter)
app.use("/home",HomeRouter)
app.use("/about",AboutRouter)


// 错误处理中间件可以有err,req,res,next四个参数，也可以只有三个参数，err可以获取到错误信息 console.log(err.stack);。
// app.use((err,req, res) => {
//     console.log(err.stack);
//     res.status(404).send('page not found');
// })

app.use((req, res) => {    
    res.status(404).send('page not found');
})

app.listen(3000, () => {
    console.log('Server is running on http://localhost:3000');
})


// node index4.js运行后，访问http://localhost:3000/home，会看到验证token，
// 然后访问http://localhost:3000/homefsdfds，会看到page not found